/* ------------------------------------时间转换---------------------------------------- */

/* 
 时间戳转换为年月日 yyyy-MM-dd hh:mm
 用法1： formatDate(new Date(val * 1000), 'yyyy年MM月dd日 hh:mm')   val为10位数时间戳
 用法2： formatDate(date, 'yyyy年MM月dd日 hh:mm')		
        date为  Tue Oct 25 2022 09:44:28 GMT+0800 (GMT+08:00)
 */

export function formatDate(date, fmt) {
    if (/(y+)/.test(fmt)) {
        fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length))
    }
    let o = {
        'M+': date.getMonth() + 1,
        'd+': date.getDate(),
        'h+': date.getHours(),
        'm+': date.getMinutes(),
        's+': date.getSeconds()
    }
    for (let k in o) {
        if (new RegExp(`(${k})`).test(fmt)) {
            let str = o[k] + ''
            fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? str : padLeftZero(str))
        }
    }


    return fmt
}
// 暴露 formatDate即可，formatDate会调用到padLeftZero
function padLeftZero(str) {
    return ('00' + str).substr(str.length)
}